import Request from '@/js_sdk/luch-request/luch-request/index.js';

let	$http = new Request()

$http.config = {
	baseURL: import.meta.env.VITE_APP_BASE_API
}

// 请求拦截器
// web运行端口默认5173；可在manifest进行修改默认端口号
$http.interceptors.request.use(async (config) => { // 可使用async await 做异步操作
  config.header = {
	...config.header,
	'Token': uni.getStorageSync('annualTicketToken'),
  }
  uni.showLoading({
	title: '加载中...',
	mask: true
  })
  return config
  
}, config => { // 可使用async await 做异步操作
  return Promise.reject(config)
})

// 响应拦截器
$http.interceptors.response.use((response) => {
  uni.hideLoading()
  switch(response.data.code) {
	case 0:
	  break;
	default:
	    // 加入到messageBoxUrl的请求url可触发弹窗形式的提示
		let messageBoxUrl = []
		if (messageBoxUrl.indexOf(response.config.url) !== -1) {
			uni.$showModal('提示',response.data.msg)
		} else {
			if (response.data.msg) {
				uni.$showTost(response.data.msg)
			}
		}
		return Promise.reject(response)
  }
  return response
}, (response) => {
  return Promise.reject(response)
})

export default $http